﻿using System;

namespace CE
{
    public class Servidores
    {
        private long? _ID_SERVIDOR;
        private byte[] _FOTO;
        private string _NOMBRE;
        private string _APELLIDO;
        private string _GENERO;
        private string _DIRECCION;
        private long? _ID_DEPARTAMENTO;
        private long? _ID_MUNICIPIO;
        private string _CORREO;
        private DateTime? _FECHA_NACIMIENTO;
        private long? _ID_ESTADO_CIVIL;
        private long? _ID_GRUPO;
        private long? _ID_ASAMBLEA;
        private DateTime? _FECHA_CONVERSION;
        private long? _ID_MINISTERIO;
        private long? _ID_BRAZO;
        private long? _ID_COMISION;
        private long? _ID_BARCA;
        private long? _ID_PASTOR_SERVIDOR;
        private bool? _ES_ANCIANO;
        private string _USUARIO;
        private string _CONTRASENA;
        private long? _ID_GRUPO_SEGURIDAD;
        private bool? _ES_PERMANENTE;
        private bool? _ES_ACTIVO;
        private bool? _IsValid;
        private bool? _IsNew;

        public Servidores()
        {
            this.ID_SERVIDOR = null;
            this.FOTO = null;
            this.NOMBRE = null;
            this.APELLIDO = null;
            this.GENERO = null;
            this.DIRECCION = null;
            this.ID_DEPARTAMENTO = null;
            this.ID_MUNICIPIO = null;
            this.CORREO = null;
            this.FECHA_NACIMIENTO = null;
            this.ID_ESTADO_CIVIL = null;
            this.ID_GRUPO = null;
            this.ID_ASAMBLEA = null;
            this.FECHA_CONVERSION = null;
            this.ID_MINISTERIO = null;
            this.ID_BRAZO = null;
            this.ID_COMISION = null;
            this.ID_BARCA = null;
            this.ID_PASTOR_SERVIDOR = null;
            this.ES_ANCIANO = null;
            this.USUARIO = null;
            this.CONTRASENA = null;
            this.ID_GRUPO_SEGURIDAD = null;
            this.ES_PERMANENTE = null;
            this.ES_ACTIVO = null;
            this.IsValid = null;
            this.IsNew = null;
        }

        public Servidores(
            long ID_SERVIDOR,
            byte[] FOTO,
            string NOMBRE,
            string APELLIDO,
            string GENERO,
            string DIRECCION,
            long ID_DEPARTAMENTO,
            long ID_MUNICIPIO,
            string CORREO,
            DateTime FECHA_NACIMIENTO,
            long ID_ESTADO_CIVIL,
            long ID_GRUPO,
            long ID_ASAMBLEA,
            DateTime FECHA_CONVERSION,
            long ID_MINISTERIO,
            long ID_BRAZO,
            long ID_COMISION,
            long ID_BARCA,
            long ID_PASTOR_SERVIDOR,
            bool ES_ANCIANO,
            string USUARIO,
            string CONTRASEÑA,
            long ID_GRUPO_SEGURIDAD,
            bool ES_PERMANENTE,
            bool ES_ACTIVO,
            bool IsValid,
            bool IsNew)
        {
            this.ID_SERVIDOR = ID_SERVIDOR;
            this.FOTO = FOTO;
            this.NOMBRE = NOMBRE;
            this.APELLIDO = APELLIDO;
            this.GENERO = GENERO;
            this.DIRECCION = DIRECCION;
            this.ID_DEPARTAMENTO = ID_DEPARTAMENTO;
            this.ID_MUNICIPIO = ID_MUNICIPIO;
            this.CORREO = CORREO;
            this.FECHA_NACIMIENTO = FECHA_NACIMIENTO;
            this.ID_ESTADO_CIVIL = ID_ESTADO_CIVIL;
            this.ID_GRUPO = ID_GRUPO;
            this.ID_ASAMBLEA = ID_ASAMBLEA;
            this.FECHA_CONVERSION = FECHA_CONVERSION;
            this.ID_MINISTERIO = ID_MINISTERIO;
            this.ID_BRAZO = ID_BRAZO;
            this.ID_COMISION = ID_COMISION;
            this.ID_BARCA = ID_BARCA;
            this.ID_PASTOR_SERVIDOR = ID_PASTOR_SERVIDOR;
            this.ES_ANCIANO = ES_ANCIANO;
            this.USUARIO = USUARIO;
            this.CONTRASENA = CONTRASEÑA;
            this.ID_GRUPO_SEGURIDAD = ID_GRUPO_SEGURIDAD;
            this.ES_PERMANENTE = ES_PERMANENTE;
            this.ES_ACTIVO = ES_ACTIVO;
            this.IsValid = IsValid;
            this.IsNew = IsNew;
        }

        public long? ID_SERVIDOR
        {
            get { return _ID_SERVIDOR; }
            set { _ID_SERVIDOR = value; }
        }
        public byte[] FOTO
        {
            get { return _FOTO; }
            set { _FOTO = value; }
        }
        public string NOMBRE
        {
            get { return _NOMBRE; }
            set { _NOMBRE = value; }
        }
        public string APELLIDO
        {
            get { return _APELLIDO; }
            set { _APELLIDO = value; }
        }
        public string GENERO
        {
            get { return _GENERO; }
            set { _GENERO = value; }
        }
        public string DIRECCION
        {
            get { return _DIRECCION; }
            set { _DIRECCION = value; }
        }
        public long? ID_DEPARTAMENTO
        {
            get { return _ID_DEPARTAMENTO; }
            set { _ID_DEPARTAMENTO = value; }
        }
        public long? ID_MUNICIPIO
        {
            get { return _ID_MUNICIPIO; }
            set { _ID_MUNICIPIO = value; }
        }
        public string CORREO
        {
            get { return _CORREO; }
            set { _CORREO = value; }
        }
        public DateTime? FECHA_NACIMIENTO
        {
            get { return _FECHA_NACIMIENTO; }
            set { _FECHA_NACIMIENTO = value; }
        }
        public long? ID_ESTADO_CIVIL
        {
            get { return _ID_ESTADO_CIVIL; }
            set { _ID_ESTADO_CIVIL = value; }
        }
        public long? ID_GRUPO
        {
            get { return _ID_GRUPO; }
            set { _ID_GRUPO = value; }
        }
        public long? ID_ASAMBLEA
        {
            get { return _ID_ASAMBLEA; }
            set { _ID_ASAMBLEA = value; }
        }
        public DateTime? FECHA_CONVERSION
        {
            get { return _FECHA_CONVERSION; }
            set { _FECHA_CONVERSION = value; }
        }
        public long? ID_MINISTERIO
        {
            get { return _ID_MINISTERIO; }
            set { _ID_MINISTERIO = value; }
        }
        public long? ID_BRAZO
        {
            get { return _ID_BRAZO; }
            set { _ID_BRAZO = value; }
        }
        public long? ID_COMISION
        {
            get { return _ID_COMISION; }
            set { _ID_COMISION = value; }
        }
        public long? ID_BARCA
        {
            get { return _ID_BARCA; }
            set { _ID_BARCA = value; }
        }
        public long? ID_PASTOR
        {
            get { return _ID_PASTOR_SERVIDOR; }
            set { _ID_PASTOR_SERVIDOR = value; }
        }

        public long? ID_PASTOR_SERVIDOR
        {
            get { return _ID_PASTOR_SERVIDOR; }
            set { _ID_PASTOR_SERVIDOR = value; }
        }

        public bool? ES_ANCIANO
        {
            get { return _ES_ANCIANO; }
            set { _ES_ANCIANO = value; }
        }
        public string USUARIO
        {
            get { return _USUARIO; }
            set { _USUARIO = value; }
        }
        public string CONTRASENA
        {
            get { return _CONTRASENA; }
            set { _CONTRASENA = value; }
        }
        public long? ID_GRUPO_SEGURIDAD
        {
            get { return _ID_GRUPO_SEGURIDAD; }
            set { _ID_GRUPO_SEGURIDAD = value; }
        }
        public bool? ES_PERMANENTE
        {
            get { return _ES_PERMANENTE; }
            set { _ES_PERMANENTE = value; }
        }

        public bool? ES_ACTIVO
        {
            get { return _ES_ACTIVO; }
            set { _ES_ACTIVO = value; }
        }

        public bool? IsValid
        {
            get
            {
                if (NOMBRE == null)
                {
                    IsValid = true;
                }
                else
                {
                    IsValid = false;
                }
                return _IsValid;
            }
            private set { _IsValid = value; }
        }
        public bool? IsNew
        {
            get { return _IsNew; }
            set { _IsNew = value; }
        }
    }
}
